package com.yipao.db.dao.order;

import java.util.List;

import org.apache.ibatis.annotations.Param;
import com.yipao.db.domain.YipaoAddress;
import com.yipao.db.domain.YipaoAddressExample;

/**
 * 收货地址
 *
 * @author tianhao
 */
public interface AddressMapper {

    long countByExample(YipaoAddressExample example);


    int deleteByExample(YipaoAddressExample example);


    int deleteByPrimaryKey(Integer id);


    int insert(YipaoAddress record);


    int insertSelective(YipaoAddress record);


    YipaoAddress selectOneByExample(YipaoAddressExample example);


    YipaoAddress selectOneByExampleSelective(@Param("example") YipaoAddressExample example, @Param("selective") YipaoAddress.Column... selective);


    List<YipaoAddress> selectByExampleSelective(@Param("example") YipaoAddressExample example, @Param("selective") YipaoAddress.Column... selective);


    List<YipaoAddress> selectByExample(YipaoAddressExample example);


    YipaoAddress selectByPrimaryKeySelective(@Param("id") Integer id, @Param("selective") YipaoAddress.Column... selective);


    YipaoAddress selectByPrimaryKey(Integer id);


    YipaoAddress selectByPrimaryKeyWithLogicalDelete(@Param("id") Integer id, @Param("andLogicalDeleted") boolean andLogicalDeleted);


    int updateByExampleSelective(@Param("record") YipaoAddress record, @Param("example") YipaoAddressExample example);


    int updateByExample(@Param("record") YipaoAddress record, @Param("example") YipaoAddressExample example);


    int updateByPrimaryKeySelective(YipaoAddress record);


    int updateByPrimaryKey(YipaoAddress record);


    int logicalDeleteByExample(@Param("example") YipaoAddressExample example);


    int logicalDeleteByPrimaryKey(Integer id);
}
